Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fedora rawhide check #121

Open
wants to merge 5 commits into
base: main
Choose a base branch
from

Conversation

pemensik
Copy link

@pemensik pemensik commented Aug 16, 2024

This is attempt to reduce number of packages, which need to be updated after new release is branched from current rawhide. This were initiated by broken mock during branching, because updates were needed together in two separate components:

I think that is in fact not necessary, because mock-core-configs uses releasever only to compute key path one higher and one lower than current rawhide. If that is provided directly by this package, then mock-core-config can use symlink provided and change only when they want to add new release into collection. This package update would fix also mock rawhide.

Requires fedora-repos-rawhide installed. Tests whether current Fedora
rawhide points to correct release key. Creates also rawhide+1 and
rawhide-1 links to preceding releases. Might be used by
mock-core-configs package directly.
Upcoming rawhide release key and previous release key is often required
by various tools. Prepare symlinks, which can be updated by script on
next Fedora branching.
@pemensik
Copy link
Author

It is also related to bug https://bugzilla.redhat.com/show_bug.cgi?id=2305309

@xsuchy
Copy link
Member

xsuchy commented Aug 16, 2024

This is already handled by https://github.com/rpm-software-management/distribution-gpg-keys/blob/main/.github/workflows/fedora-repos.yml

And check the dates. The new GPG key was added here very shortly after the key was created by relengs.

@praiskup
Copy link
Member

This is meant to solve the problem: rpm-software-management/mock#1342

https://pagure.io/releng/issue/12001 was meant to update the release process so we never forget, but I assume it needs revamping.

@pemensik
Copy link
Author

@xsuchy That workflow checks only addition of new GPG key.

But does not trigger any action when rawhide is switched to new release. Even though it were updated quickly, it still has broken mockbuild on rawhide branch, because the update was not done together with mock-core-configs (and fedora-repos). Ideally we should have just one source of truth, which change at single place would be enough to switch to N+1 release in all other tools. The less packages, where that change needs to happen, the better. This is one step to remove the need to update releasever in mock-core-configs. Because it uses the key from this package anyway and that change needs to happen here first.

It does not count when key is added, but when the update hits the stable. That unfortunately were not as quick and multiple people complained on Friday at devel matrix channel. That could be avoided if change of mock-core-config did not have to match change in distribution-gpg-keys.

Obtain rawhide_release from spec file and check our rawhide key points
to matching release.
@pemensik
Copy link
Author

These symlinks should avoid the need to change mock-core-configs/etc/mock/templates/fedora-rawhide.tpl and rawhide-eln.tpl in rpm-software-management/mock@1d000d9#diff-6d85f049d29a9ebeda1e02d48fb369982d6410ba63c64306001e1f41f8a3c4dd. Which needs to match change here and in current way needs to part of the same update, probably using side tags.

@pemensik
Copy link
Author

pemensik commented Aug 17, 2024

That is, these changes are needed because rawhide_gpg_keys macro creates rawhide+1 and rawhide-1 key links. If this package provides these links, then only this package is responsible for the change and releasever adjusting from mock-core-configs can be removed. Replaced by just something like:

{%- macro rawhide_gpg_keys() -%}
file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-rawhide-primary
file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-rawhide-1-primary
file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-rawhide-2-primary
{%- endmacro %}

But wait. I have not noticed eln uses different values than rawhide. rawhide uses rawhide+0, rawhide-1, rawhide+1, but eln uses rawhide+0, rawhide-1, rawhide-2. So perhaps rawhide-2 link should be maintained here too.

fedora-eln template uses rawhide+0, rawhide-1 and rawhide-2 keys. Unlike
rawhide +1 and -1. Add additional managed link too.
GitHub worflow already contains similar check. Use similar also for
checking rawhide release here. It should work on any distribution having
git and awk installed, for example ubuntu image.
@pemensik
Copy link
Author

This is related to problem rpm-software-management/mock#1338, which needs similar workarounds also in mkosi. Having this at key provider might provide decent workaround.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants